In a virtualized storage environment, the virtualization device maintains metadata comprising all file system entries for all virtualized storage devices. The initial inventory scan (storage import) of the backend file systems builds the metadata. This storage import involves the virtualization device walking the entire directory structure to enumerate every file and directory in the backend file systems. It is critical that the file system entries are accurate and no incorrect entries exist in the metadata, and that no entries are missed. Depending on the dataset, storage import can take from minutes to several days or even weeks to complete.
During this time period, client querying and client operations that may result in file system changes are sent to the virtualization device and are expected to be handled and responses to in a timely manner. However, due to the nature and requirements of the storage import process described above, certain restrictions have been imposed on the types of client operations that are permitted during the data storage import to ensure that the client modifications do not compromise the integrity of the metadata.
Currently, directory modifications, such as directory renames or directory deletions, as well as certain file operations, are not allowed during the storage import scan. This is non-optimal at best and non-workable at worst in certain environments where clients may lose access to view or modify their files for long periods of time during the storage import process, which as mentioned earlier may take anywhere from hours to days/weeks. Additionally, in case of metadata failure where a rebuild of the metadata is required, these restrictions could easily interrupt the normal client workflow and impact operations with potential substantial costs.